/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package mx.itschapala.ds2.cafeteria.bl;

import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import mx.itschapala.ds2.cafeteria.dao.ListaplatillosDaoLocal;
import mx.itschapala.ds2.cafeteria.enumeracion.EstadoPlatillo;
import mx.itschapala.ds2.cafeteria.modelo.Compra;
import mx.itschapala.ds2.cafeteria.modelo.Listaplatillos;

/**
 *
 * @author Santiago
 */
@Stateless
public class ListaPlatillosBl implements ListaPlatillosBlLocal {

    @EJB
    private ListaplatillosDaoLocal listaplatillosDao;

    @Override
    public EstadoPlatillo register(Listaplatillos platillo) {
        if (listaplatillosDao.findByDuplicity(platillo)) {
            return EstadoPlatillo.INCOMPLETE;
        } else {
            listaplatillosDao.create(platillo);
            return EstadoPlatillo.COMPLETE;
        }
    }

    @Override
    public EstadoPlatillo modify(Listaplatillos platillo) {
        if (platillo.getId() == null || listaplatillosDao.find(platillo.getId()) == null) {
            return EstadoPlatillo.INCOMPLETE;
        } else {
            listaplatillosDao.edit(platillo);
            return EstadoPlatillo.COMPLETE;
        }
    }

    @Override
    public EstadoPlatillo delete(Listaplatillos platillo) {
        if (platillo.getId() == null || listaplatillosDao.find(platillo.getId()) == null) {
            return EstadoPlatillo.INCOMPLETE;
        } else {
            listaplatillosDao.remove(platillo);
            return EstadoPlatillo.COMPLETE;
        }
    }

    @Override
    public List<Listaplatillos> getAll() {
        return listaplatillosDao.findAll();
    }

    @Override
    public Listaplatillos findById(Integer id) {
        return listaplatillosDao.find(id);
    }

//    @Override
//    public List<Listaplatillos> getDishesByBuy(Compra compra) {
//        return listaplatillosDao.findByCompra(compra);
//    }
    
    
}
